package com.witsight.platform.exception;

import org.springframework.context.support.DefaultMessageSourceResolvable;

/**
 * 说明：业务异常
 * 
 * @Title: BusinessException.java
 * @Package com.witsight.platform.exception
 * @See: {@link BaseException} 
 * Copyright: Copyright (c) 2017 
 * Company:sany huax witsight team by product
 * @author: penght
 * @date: 2017年9月11日 下午5:30:40
 * @version: V1.0
 *
 */
public class BusinessException extends BaseException {
	private static final long serialVersionUID = 78484407421113621L;
	// 字段名
	private String fieldName;
	// 字段多国语言
	private DefaultMessageSourceResolvable fieldInfo;

	/**
	 * 
	 * 说明： 构造函数
	 * 
	 * @Title:BusinessException.java
	 * @See: 构造函数
	 * @param message
	 *            错误消息
	 * @date 2016年6月1日 上午10:52:34
	 */
	public BusinessException(final String message) {
		super(message);
	}

	/**
	 * 
	 * 说明：构造函数
	 * 
	 * @Title:BusinessException.java
	 * @See: 构造函数
	 * @param message
	 *            错误信息
	 * @param params
	 *            错误参数
	 * @date 2016年6月1日 上午10:52:30
	 */
	public BusinessException(final String message, final Object... params) {
		super(message, params);
	}

	/**
	 * 
	 * 说明：构造函数
	 * 
	 * @Title:BusinessException.java
	 * @See: 构造函数
	 * @param fieldName
	 *            字段名，（字段的id）
	 * @param message
	 *            错误信息
	 * @param params
	 *            错误参数
	 * @date 2016年6月1日 上午10:52:25
	 */
	public BusinessException(final String message, final String fieldName, final Object... params) {
		super(message, params);
		this.fieldName = fieldName;
		this.fieldInfo = new DefaultMessageSourceResolvable(fieldName);
	}

	public DefaultMessageSourceResolvable getFieldInfo() {
		return fieldInfo;
	}

	public String getFieldName() {
		return fieldName;
	}

	public void setFieldName(String fieldName) {
		this.fieldName = fieldName;
	}
}
